www.gusucode.com > 循环自相关函数工具箱源码程序 > matlab代做 修改 程序循环自相关函数工具箱/cyclostationary_toolbox/cyclic_correlation_coefficient.m
function rho=cyclic_correlation_coefficient(S,tol) % % CYCLIC_CORRELATION_COEFFICIENT % % calculates the cyclic correlation coefficient for signal % from its spectral correlation density % % USAGE % rho=cyclic_correlation_coefficient(S,tol) % % Optional parameter tol can be used to set all % rho(x,y) to zero if S(x,y) is less than tol% of max(S) % File: cyclic_correlation_coefficient.m % Last Revised: 25/11/97 % Created: 25/11/97 % Author: Andrew C. McCormick % (C) University of Strathclyde [rows,cols]=size(S); rho=zeros(rows,cols); S=abs(S); mxs=max(max(S)); scale_factor=2*cols/rows; for f=1:rows for a=1:cols fplus=f+floor(a/scale_factor); fminus=f-floor(a/scale_factor); if fplus>rows fplus=fplus-rows; end if fminus<1 fminus=fminus+rows; end rho(f,a)=S(f,a)/sqrt(S(fplus,1)*S(fminus,1)); end end if nargin==2 [i,j]=find(S<tol*mxs/100); for k=1:length(i) rho(i(k),j(k))=0; end end